#-*- coding: utf-8 -*-
#@File    : login.py
#@Time    : 2021/3/17 20:33
#@Author  : xintian
#@Email   : 1730588479@qq.com
#@Software: PyCharm
print()
"""
接口名称：登录接口
类型：token机制/----有些项目是cookies--sessionid
用途：
    1- 本身需要做接口自动化测试
    2- 获取token，给后续的接口做鉴权
"""
from configs.config import HOST
import requests
import hashlib
import pprint

#封装一个md5加密函数
def  get_md5(psw):
    """
    :param psw:
    :return: 返回md5加密的结果
    """
    #实例化一个md5对象
    md5 = hashlib.md5()
    #调用加密方法直接加密
    md5.update(psw.encode("utf-8"))
    return md5.hexdigest()


#封装一个登录的类
class Login:
    def login(self,inData,mode=True):#登录方法
        #url路径
        url = f'{HOST}/api/loginS'
        #字典名[键名] = 新的值     字典修改值操作
        inData["password"] = get_md5(inData["password"])
        #参数
        payload = inData
        #请求
        """
        data-----一般是表单格式
        json-----json
        files----文件上传接口
        params---参数会放到url路径里 ?a=1&b=2
        """
        resp = requests.post(url,json=payload)
        #查看响应
        #return resp.text#json字符串
        if mode:#获取token
            return resp.json()["token"]  # 返回是字典类型
        else:#获取相应数据
            return resp.json()  # 返回是字典类型



if __name__ == '__main__':#快捷键-  ctrl+j
    res = Login().login({"username":"20154084","password":"123456"})
    print(res)
    pprint.pprint(res)





